// pages/writeOff/writeOff.js
const host = require('../../config.js').host;
const network = require('../../utils/network.js');
var util = require('../../utils/util.js');
Page({

  /**
   * 页面的初始数据
   */
  data: {
    host:host,
    info:{},
    merchantId:"",
    ownerId:"",
    startDate: "",
    endDate: "",
    listData:[],
    selectData:[]
  },
  // 选中日期
  StartDateChange(e) {
    this.setData({
      startDate: e.detail.value
    })
     // 获取待对账列表数据
     this.getWriteoffList()
  },
  EndDateChange(e) {
    this.setData({
      endDate: e.detail.value
    })
    // 获取待对账列表数据
    this.getWriteoffList()
    
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({
      merchantId:options.merchantId,
      ownerId:options.ownerId
    })

    

    var dayTime =util.formatTime(new Date()); 
    var dateTime = dayTime.split(" ")[0] 
    this.setData({ 
      // startDate:dateTime,
      endDate: dateTime,
    })

    this.getPlaceStartTime()
    
    this.getOwnerDetail()
    
  },
  //对账
  sureWriteoffClick() {
    var arr=this.data.selectData;
    var idArr=[];//选中ID数组
    var total=0; //选中价格总和
    for(var i=0;i<arr.length;i++){
      var index=arr[i]
      var dic=this.data.listData[index]
      total=total+dic['notCheckMoney']
      idArr.push(dic['goodsId'])
    }
    console.log(idArr)
    //ID拼接
    var idStr= idArr.join(',')
   
    var str="共"+arr.length+"个商品，共计"+total+"元，是否对账？"
    if(0 == total || '0' == total){
      // 0元就别对账了
      wx.showToast({
        title: '待对账金额:0元,暂时没有商品需要对账',
        icon:'none',
        duration:2500,
      })
      return;

    }

    let that=this;
    wx.showModal({
      title: "提示",
      content: str,
      showCancel: true, //是否显示取消按钮
      cancelText: "取消", //默认是“取消”
      cancelColor: '#ff0000', //取消文字的颜色
      confirmText: "确定", //默认是“确定”
      confirmColor: '#000000', //确定文字的颜色
 
      success: function (res) {
        if (res.cancel) {
          //点击取消,默认隐藏弹框
        } else {
          // 点击确定对账 判断


          //点击确定
          wx.showToast({
            title: '对账成功'
          })
          that.postAddWriteOff(idStr)
        }
      },
      fail: function (res) {}, //接口调用失败的回调函数
      complete: function (res) {}, //接口调用结束的回调函数（调用成功、失败都会执行）
    })
  },
  /**
   * 对账操作
   * totalPrice 对账总金额
checkStartTime   对账开始时间-对账的时间范围
checkEndTime      对账结束时间
ownerId           对账的业主id
merchantId        对账的商家id
goodsId 选中的商品id
   */
  postAddWriteOff(e) {
    network.requestPost('/xcx/customer-check/add-check-order', {
      "ownerId": this.data.ownerId,
      "merchantId":this.data.merchantId,
      "goodsIds":e,
      "checkStartTime":this.data.startDate,
      "checkEndTime":this.data.endDate

    }, res => {
      console.log("res", res)
      if (res.data.code == '200') {
        this.getWriteoffList()
      } else {
        wx.showToast({
          title: res.data.msg,
          icon: 'none'
        })
      }
    })
  },
  //对账记录
  gotoWriteoffList() {
    wx.navigateTo({
      url: '/pages/writeoffList/writeoffList?merchantId='+this.data.merchantId+"&ownerId="+this.data.ownerId,
    })
  },
  selectItemClick(e){
      
      this.setData({
        selectData:e.detail.value
      })
      console.log("selectData==",this.data.selectData)
  },
/**
   * 获取业主详情
   */
  getOwnerDetail() {
    network.requestGet('/xcx/customer/getOwnerDetail', {
      "ownerId": this.data.ownerId
    }, res => {
      console.log("res", res)
      if (res.data.code == '200') {
        this.setData({
          info: res.data.data
        })
      } else {
        wx.showToast({
          title: res.data.msg,
          icon: 'none'
        })
      }
    })
  },
  
/**
   * 获取对账列表第一条的结束时间为默认开始时间查询
   */
  getPlaceStartTime() {
    network.requestGet('/xcx/customer-check/confirm-check-list', {
      "ownerId": this.data.ownerId,
      "merchantId":this.data.merchantId
    }, res => {
      console.log("res", res)
      if (res.data.code == '200') {
        if(res.data.data.length){
          //暂时 取消 赋值开始时间, 上次对账可能只选择了一个 对账,导致其他对账查询不到
          // this.setData({
          //   startDate : res.data.data[0].checkEndTime
          // }) 
        }
        this.getWriteoffList()
      } 
    })
  },
  // 获取待对账列表数据
  getWriteoffList(){ 
   
    if(!this.data.merchantId || !this.data.ownerId){
        return ;
    }
    let that=this;
        network.requestGet('/xcx/customer-check/start-check-list', {
            'merchantId': that.data.merchantId,
            'ownerId': that.data.ownerId,  
            'checkStartTime':that.data.startDate,
            'checkEndTime':that.data.endDate
        }, res => {
          
           var arr=res.data.data
           for (const i in arr) {
             arr[i].checked=false
           }
           
           that.setData({
              listData: arr,
            })
            
        })  
},
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})